In compression/decompression (codec) systems, compression efficiency and video quality are important performance criteria. Visual quality is an important aspect of the user experience in many video applications and compression efficiency impacts the amount of memory storage needed to store video files and/or the amount of bandwidth needed to transmit and/or stream video content. For example, a video encoder compresses video information so that more information can be sent over a given bandwidth or stored in a given memory space or the like. The compressed signal or data may then be decoded via a decoder that decodes or decompresses the signal or data for display to a user. In most implementations, higher visual quality with greater compression is desirable.
In the context of video encoding, bit rate control (BRC) is a key factor in video quality. Given a target bitrate, BRC adjusts the quantization parameter (QP) value of each frame to control the number of bits generated during compression of the frames. One of the challenges in BRC is handling scene change scenarios where such scene change frames (e.g., a frame at the beginning of a scene change) are typically encoded as I frames. Since a scene change frame has no correlation with previous frames, it is extremely difficult to predict its QP. If the predicted QP value is off from the desired QP value, the result is poor quality of the remaining frames in the same group of pictures (GOP) or beyond and possibly video buffer verifier (VBV) buffer overflow/underflow. Typical BRC techniques include heuristic and empirical approaches as well as multiple pass approaches where an input frame is encoded multiple times with the QP prediction being fine tuned across each pass. Such heuristic and empirical approaches provide relatively low computation complexity but do not accurately predict QP, resulting in an undesirably large gap between actual and target bitrates. Multiple pass techniques are more accurate but have undesirably large computation costs and durations making them unsuitable for real-time and low power implementations.
It may be advantageous to improve QP selection particularly for scene change frames or I-frames to provide enhanced compression efficiency and/or video quality. It is with respect to these and other considerations that the present improvements have been needed. Such improvements may become critical as the desire to compress and transmit video data becomes more widespread.